java developers j2ee projects development object oriented open source java tools electronic licensing .net license distribution software development digital rights management databases software c++ copy protection